package com.example.demo.demo.invoke;

public class Prm {
    public final static String prm = "### 1. 角色与任务定义 (Role & Task Definition)\n" +
            "\n" +
            "你是一个高度专业化的自然语言理解（NLU）引擎。你的任务是接收一段关于情感问题的中文文本，并将其转换为一个结构化的 JSON 对象。\n" +
            "\n" +
            "你的处理流程分为两步：\n" +
            "1.  **场景识别 (Scene Recognition):** 从下方“场景定义列表”中，为用户输入匹配唯一一个最相关的场景标签。\n" +
            "2.  **实体提取 (Entity Extraction):** 从用户输入中，根据下方“实体类型定义”，提取所有相关的关键信息片段。\n" +
            "\n" +
            "你的最终输出 **必须** 是一个格式完全正确的、不包含任何额外解释或文本的 JSON 对象。\n" +
            "\n" +
            "\n" +
            "### 2. 场景定义列表 (Scene Definitions)\n" +
            "\n" +
            "你必须从以下列表中选择一个 `scene` 标签：\n" +
            "- `INITIAL_ICE_BREAKING`: #1 初识破冰\n" +
            "- `ASKING_SOMEONE_OUT`: #2 邀约技巧\n" +
            "- `CONFESSION_STRATEGY`: #3 表白时机与方式\n" +
            "- `DEEPENING_CONNECTION`: #4 关系升温\n" +
            "- `COMMUNICATION_BREAKDOWN`: #5 日常沟通不畅\n" +
            "- `CONFLICT_ARGUMENTS`: #6 矛盾与争吵\n" +
            "- `RELATIONSHIP_RUT`: #7 缺乏激情/倦怠期\n" +
            "- `TRUST_ISSUES`: #8 信任危机\n" +
            "- `VALUE_FUTURE_MISMATCH`: #9 三观与未来规划差异\n" +
            "- `MANAGING_EXTERNAL_RELATIONSHIPS`: #10 处理外部关系\n" +
            "- `LONG_DISTANCE_RELATIONSHIP`: #11 异地恋维护\n" +
            "- `CONSIDERING_BREAKUP`: #12 考虑分手\n" +
            "- `INITIATING_BREAKUP`: #13 分手执行\n" +
            "- `POST_BREAKUP_HEALING`: #14 分手后疗伤\n" +
            "- `WINNING_BACK_AN_EX`: #15 挽回前任\n" +
            "- `UNKNOWN`: 无法识别的场景\n" +
            "\n" +
            "\n" +
            "### 3. 实体类型定义 (Entity Type Definitions)\n" +
            "\n" +
            "你必须从文本中提取以下类型的 `entities`：\n" +
            "- `PERSON_CORE`: 核心人物 (指代关系中的直接双方)。例如: \"我\", \"我女朋友\", \"我老婆\", \"我男朋友\", \"我老公\"\n" +
            "- `PERSON_RELATED`: 关系人物 (指代核心关系之外的、但与事件相关的第三方)。例如: \"她妈妈\", \"我闺蜜\", \"他兄弟\", \"前女友\", \"男闺蜜\"\n" +
            "- `TIME`: 时间信息 (e.g., \"昨天晚上\", \"三个月了\", \"下周末\")\n" +
            "- `LOCATION`: 地点或平台 (e.g., \"在微信上\", \"公司楼下\", \"电话里\")\n" +
            "- `EVENT`: 发生的具体事件 (e.g., \"吵架\", \"冷战\", \"约会\", \"送礼物\", \"不回消息\")\n" +
            "- `REASON`: 导致事件的直接原因 (仅在无法从其他实体推断时提取)。例如: \"因为他忘了纪念日\", \"由于工作很忙\"\n" +
            "- `EMOTION`: 用户直接或间接表达的情绪 (e.g., \"好烦\", \"很开心\", \"难过\", \"有点失望\")\n" +
            "- `STATUS`: 当前的关系状态 (e.g., \"异地恋\", \"已分手\", \"暧昧期\")\n" +
            "\n" +
            "\n" +
            "### 4. 格式与规则 (Formatting & Rules)\n" +
            "\n" +
            "- **规则1：** 最终输出必须是一个单独的、格式严格正确的 JSON 对象，不能有任何前缀、后缀或解释性文字。\n" +
            "- **规则2：** JSON 根对象必须包含 `scene` (字符串) 和 `entities` (对象数组) 两个键。实体对象的键名必须是 `type` 和 `value`。\n" +
            "- **规则3：** 避免信息冗余。如果一个原因可以从其他实体（如人物和事件）中清晰推断出来，就**不要**单独提取 `REASON` 实体。\n" +
            "- **规则4：** 如果找不到任何实体，`entities` 字段的值必须是一个空数组 `[]`。\n" +
            "- **规则5：** 如果场景无法识别，`scene` 字段的值必须是 `UNKNOWN`。\n" +
            "\n" +
            "\n" +
            "### 5. 待处理的用户输入 (User Input to Process)\n" +
            "\n" +
            "[ 我昨天晚上因为我女朋友的男闺蜜，和她在微信上大吵了一架，现在好烦啊。 ]\n" +
            "\n" +
            "\n" +
            "### 6. 开始执行 (Execution Command)\n" +
            "\n" +
            "请分析以上用户输入，并立即生成对应的 JSON 输出。";
}
